//app.js
let config = require('config.js');
App({
  debug: config.debug, //开启后只调用本地数据
  baseUrl: config.baseUrl,
  openid: 'oXDS_5cj4-dw4_Xu4q4XJ1MRYgJ8',
  globalData: {
    title: config.title,
    userInfo: null,
    latitude: null,
    longitude: null,
    topic: config.topic,
    city: config.city,
  },
  onLaunch: function () {
    var _this = this;
    if (!wx.cloud) {
      console.error('请使用 2.2.3 或以上的基础库以使用云能力')
    } else {
      wx.cloud.init({
        traceUser: true,
      })

      this.getOpenId();
    }
    //载入数据
    //如果已经授权，提前获取定位信息
    wx.getSetting({
      success: res => {
        if (res.authSetting['scope.userLocation']) {
          //获取地理位置
          wx.getLocation({
            type: 'wgs84', // 默认为 wgs84 返回 gps 坐标，gcj02 返回可用于 wx.openLocation 的坐标  
            success: function (res) {
              _this.globalData.latitude = res.latitude;
              _this.globalData.longitude = res.longitude;
            }
          })
        }
      }
    })
  },
  requestUserInfo: function () {
    var that = this;
    wx.getUserInfo({
      success: res => {
        // 可以将 res 发送给后台解码出 unionId
        that.globalData.userInfo = res.userInfo;
        // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
        // 所以此处加入 callback 以防止这种情况
        if (that.userInfoReadyCallback) {
          that.userInfoReadyCallback(res);
        }
      }
    })
  },
  getOpenId() {
    wx.cloud.callFunction({
      name: 'quickstartFunctions',
      data: {
        type: 'getOpenId'
      }
    }).then((resp) => {
      this.openid = resp.result.openid
    }).catch((e) => {})
  },
})